// criado em 26/10/2010
// Ewerton dos Santos de Sousa
// Modificado em 18/11/2010 -- 3/12/2010
// versao 0.3
// atualizações 2
class InscricaoAcompanhamento {
    // Relcinamentos
    static hasMany = [inscricaoAcompanhamentoItenss : InscricaoAcompanhamentoItens ,
                       revisaoDeEmails : RevisaoDeEmail  ]
    static belongsTo = Inscricao
    // fim Relacioanmntos
    //
    // Classes
    Date dataDeCadastro = new Date() // data do Cadastro  ->Date
    Inscricao inscricao // Relacionamanto com incricao -> bigint
    Integer status = 0 // Status do Canditato ->String
    String statusSeReprovado = null // se status = Reprovado o Porque  -> string
    String obs = null // Obsevaçao  ->String
    String outroItemFaltando = null // Status do Canditato ->String
    String usuario = null // usuario Modificados -> bigint
    // *
    Integer messagem = 0
    // 0 e-mail nao revisado na primeira fase
    // 1 e-mail revisado na primeira fase
    // 2 e-mail nao enviado na primeira fase
    // 3 e-mail enviado na primeira fase
    // 4 e-mail revisado em recurso na primeira fase
    // 5 e-mail enviado em recurso na primeira fase
    //*
    // Fim objetos
    // Regras da classe
    static constraints = {
        usuario(blank: true, nullable:true )
        obs(blank: true, nullable:true )
        outroItemFaltando(blank: true, nullable:true )
        status(blank: false, nullable:false )
        statusSeReprovado(blank: true,nullable:true )
        messagem(blank: true,nullable:true )
    }
    //Fim Regras da classe
      //
     // Retorna String
    String toString(){
        return "${this.status}"
    }
// Fim Retorna String  
//
// mapeamaneto no banco de dados
    static mapping = {
 
        table "TB_INSCRICAO_ACOMPANHAMENTO"
   //     id generator: 'sequence' ,params:[sequence:'tb_inscricao_acompanhamento_inscricao_acompanhamento_id_seq']
        version false
    //    id column:'inscricao_acompanhamento_id'
        inscricaoAcompanhamentoItenss cascade:'all-delete-orphan'
        dataDeCadastro column : "DT_DATA_CADASTRO"
        inscricao column : "INSCRICAO_ID"
        status  column : "DS_STATUS"
        statusSeReprovado column : "DS_SE_REPROVADO_MOTIVO"
        obs column : "DS_PARECER_AUDITORIA"
        outroItemFaltando  column : "DS_OUTRO_ITEM"
        usuario column : "ID_USUARIO"
        messagem column : "TP_MESSAGEM"
    }
// Fim mapeamaneto no banco de dados

  // Status da Incricao


  public static situacao(id) {
      def situacao = [
      '', // 0
      'Aguardando Analise Documentação', // 1
      'Documentação Compatível Para a Segunda Fase', // 2
      'Documentação Incompatível Para a Segunda Fase' // 3

      ]
        return situacao[id]
  }
   // Fim  Status da Incricao
   
   

}
